Methods and systems for uplink scheduling using weighted QoS parameters

ABSTRACT

Certain embodiments of the present disclosure proposes a flexible method for scheduling of an uplink transmission simultaneously considering all active connections of a mobile station. A decision on scheduling priority can be made based on a metric that comprises QoS parameters and current traffic measurements. The weight factors may be applied for every QoS parameter per schedule type providing flexibility of the scheduling algorithm. The proposed scheduling algorithm may be applied to satisfy different QoS requirements for each service provider and application by changing weight factors if required.

TECHNICAL FIELD

The present disclosure generally relates to communication, and morespecifically to a method for scheduling an uplink transmissionsimultaneously considering all active connections of a mobile station.

SUMMARY

Certain embodiments provide a method for scheduling uplink connectionsof a mobile station (MS). The method generally includes setting a weightfactor for Quality of Service (QoS) parameters for different types ofconnections, updating a traffic status metric for active connection ofthe MS, calculating a QoS metric for each active connection of the MSbased on said weight factors for the plurality of QoS parameters percorresponding connection and on the traffic status metric for that sameconnection, and determining a scheduling order of all active connectionsof the MS according to the QoS metric for each connection.

Certain embodiments provide an apparatus for scheduling uplinkconnections of a mobile station (MS). The method generally includeslogic for setting a weight factor for Quality of Service (QoS)parameters for different types of connections, logic for updating atraffic status metric for active connection of the MS, logic forcalculating a QoS metric for each active connection of the MS based onsaid weight factors for the plurality of QoS parameters percorresponding connection and on the traffic status metric for that sameconnection, and logic for determining a scheduling order of all activeconnections of the MS according to the QoS metric for each connection.

Certain embodiments provide an apparatus for scheduling uplinkconnections of a mobile station (MS). The method generally includesmeans for setting a weight factor for Quality of Service (QoS)parameters for different types of connections, means for updating atraffic status metric for active connection of the MS, means forcalculating a QoS metric for each active connection of the MS based onsaid weight factors for the plurality of QoS parameters percorresponding connection and on the traffic status metric for that sameconnection, and means for determining a scheduling order of all activeconnections of the MS according to the QoS metric for each connection.

Certain embodiments provide a computer-program product for schedulinguplink connections of a mobile station (MS), comprising a computerreadable medium having instructions stored thereon, the instructionsbeing executable by one or more processors. The instructions generallyinclude instructions for setting a weight factor for Quality of Service(QoS) parameters for different types of connections, instructions forupdating a traffic status metric for active connection of the MS,instructions for calculating a QoS metric for each active connection ofthe MS based on said weight factors for the plurality of QoS parametersper corresponding connection and on the traffic status metric for thatsame connection, and instructions for determining a scheduling order ofall active connections of the MS according to the QoS metric for eachconnection.

BRIEF DESCRIPTION OF THE DRAWINGS

So that the manner in which the above-recited features of the presentdisclosure can be understood in detail, a more particular description,briefly summarized above, may be had by reference to embodiments, someof which are illustrated in the appended drawings. It is to be noted,however, that the appended drawings illustrate only certain typicalembodiments of this disclosure and are therefore not to be consideredlimiting of its scope, for the description may admit to other equallyeffective embodiments.

FIG. 1 illustrates an example wireless communication system, inaccordance with certain embodiments of the present disclosure.

FIG. 2 illustrates various components that may be utilized in a wirelessdevice in accordance with certain embodiments of the present disclosure.

FIG. 3 illustrates an example transmitter and an example receiver thatmay be used within a wireless communication system in accordance withcertain embodiments of the present disclosure.

FIG. 4 shows Quality of Service (QoS) parameters that are considered fordifferent scheduling types in the Institute of Electrical andElectronics Engineers (IEEE) 802.16 standard in accordance with certainembodiments of the present disclosure.

FIG. 5 shows weight factors associated with QoS parameters for differentscheduling types in accordance with certain embodiments of the presentdisclosure.

FIG. 6 shows a process of determining a scheduling order of allconnections of a mobile station (MS) in accordance with certainembodiments of the present disclosure.

FIG. 6A illustrates example components capable of performing theoperations illustrated in FIG. 6.

FIG. 7 shows a process of computing a QoS metric for each connection ofthe MS in accordance with certain embodiments of the present disclosure.

FIG. 7A illustrates example components capable of performing theoperations illustrated in FIG. 7.

DETAILED DESCRIPTION

The word “exemplary” is used herein to mean “serving as an example,instance, or illustration.” Any embodiment described herein as“exemplary” is not necessarily to be construed as preferred oradvantageous over other embodiments.

The Worldwide Interoperability for Microwave Access (WiMAX) standardspecifies that a mobile station (MS) can simultaneously support multipleuplink (UL) connections for different purposes and with differentQuality of Service (QoS) requirements. There are three dedicatedconnections at the MS for the purpose of sending and receiving controlmessages. These control connections can be utilized to allowdifferentiated levels of QoS to be applied for carrying Media AccessControl (MAC) management traffic. However, no specific QoS parametersare defined for control connections. In addition, the WiMAX standardspecifies five different schedule types for all user data trafficrepresenting transport connections. The transport connections may haveone service flow, and specific QoS parameters may be defined by aschedule type. The service flow can be characterized by a set of QoSparameters such as latency, jitter, throughput assurance, etc.

Before broadcasting control messages and user data traffic, the MS mayneed to request an UL bandwidth based on QoS requirements of eachconnection. However, in order to reduce the MAC overhead, the ULbandwidth may be addressed to the Basic connection identification (ID)of the MS and not to individual connection identifiers (CIDs). If the MSreceives a smaller UL data grant than expected (or requested), than theMS may need to decide which connection is scheduled first in order tosatisfy QoS requirements of each connection and to provide a fairschedule. In the prior art, a scheduling priority is given to aparticular scheduling type. For example, the Unsolicited Grant Service(UGS) traffic may be scheduled first, although transmission latencies ofother scheduling types may be higher than the maximum allowable latencyspecified by the QoS requirements.

Exemplary Wireless Communication System

The techniques described herein may be used for various broadbandwireless communication systems, including communication systems that arebased on an orthogonal multiplexing scheme. Examples of suchcommunication systems include Orthogonal Frequency Division MultipleAccess (OFDMA) systems, Single-Carrier Frequency Division MultipleAccess (SC-FDMA) systems, and so forth. An OFDMA system utilizesorthogonal frequency division multiplexing (OFDM), which is a modulationtechnique that partitions the overall system bandwidth into multipleorthogonal sub-carriers. These sub-carriers may also be called tones,bins, etc. With OFDM, each sub-carrier may be independently modulatedwith data. An SC-FDMA system may utilize interleaved FDMA (IFDMA) totransmit on sub-carriers that are distributed across the systembandwidth, localized FDMA (LFDMA) to transmit on a block of adjacentsub-carriers, or enhanced FDMA (EFDMA) to transmit on multiple blocks ofadjacent sub-carriers. In general, modulation symbols are sent in thefrequency domain with OFDM and in the time domain with SC-FDMA.

One specific example of a communication system based on an orthogonalmultiplexing scheme is a WiMAX system. WiMAX, which stands for theWorldwide Interoperability for Microwave Access, is a standards-basedbroadband wireless technology that provides high-throughput broadbandconnections over long distances. There are two main applications ofWiMAX today: fixed WiMAX and mobile WiMAX. Fixed WiMAX applications arepoint-to-multipoint, enabling broadband access to homes and businesses,for example. Mobile WiMAX offers the full mobility of cellular networksat broadband speeds.

IEEE 802.16x is an emerging standard organization to define an airinterface for fixed and mobile broadband wireless access (BWA) systems.These standards define at least four different physical layers (PHYs)and one media access control (MAC) layer. The OFDM and OFDMA physicallayer of the four physical layers are the most popular in the fixed andmobile BWA areas respectively.

FIG. 1 illustrates an example of a wireless communication system 100 inwhich embodiments of the present disclosure may be employed. Thewireless communication system 100 may be a broadband wirelesscommunication system. The wireless communication system 100 may providecommunication for a number of cells 102, each of which is serviced by abase station 104. A base station 104 may be a fixed station thatcommunicates with user terminals 106. The base station 104 mayalternatively be referred to as an access point, a Node B or some otherterminology.

FIG. 1 depicts various user terminals 106 dispersed throughout thesystem 100. The user terminals 106 may be fixed (i.e., stationary) ormobile. The user terminals 106 may alternatively be referred to asremote stations, access terminals, terminals, subscriber units, mobilestations, stations, user equipment, etc. The user terminals 106 may bewireless devices, such as cellular phones, personal digital assistants(PDAs), handheld devices, wireless modems, laptop computers, personalcomputers, etc.

A variety of algorithms and methods may be used for transmissions in thewireless communication system 100 between the base stations 104 and theuser terminals 106. For example, signals may be sent and receivedbetween the base stations 104 and the user terminals 106 in accordancewith OFDM/OFDMA techniques. If this is the case, the wirelesscommunication system 100 may be referred to as an OFDM/OFDMA system.

A communication link that facilitates transmission from a base station104 to a user terminal 106 may be referred to as a downlink (DL) 108,and a communication link that facilitates transmission from a userterminal 106 to a base station 104 may be referred to as an uplink (UL)110. Alternatively, a downlink 108 may be referred to as a forward linkor a forward channel, and an uplink 110 may be referred to as a reverselink or a reverse channel.

A cell 102 may be divided into multiple sectors 112. A sector 112 is aphysical coverage area within a cell 102. Base stations 104 within awireless communication system 100 may utilize antennas that concentratethe flow of power within a particular sector 112 of the cell 102. Suchantennas may be referred to as directional antennas.

FIG. 2 illustrates various components that may be utilized in a wirelessdevice 202 that may be employed within the wireless communication system100. The wireless device 202 is an example of a device that may beconfigured to implement the various methods described herein. Thewireless device 202 may be a base station 104 or a user terminal 106.

The wireless device 202 may include a processor 204 which controlsoperation of the wireless device 202. The processor 204 may also bereferred to as a central processing unit (CPU). Memory 206, which mayinclude both read-only memory (ROM) and random access memory (RAM),provides instructions and data to the processor 204. A portion of thememory 206 may also include non-volatile random access memory (NVRAM).The processor 204 typically performs logical and arithmetic operationsbased on program instructions stored within the memory 206. Theinstructions in the memory 206 may be executable to implement themethods described herein.

The wireless device 202 may also include a housing 208 that may includea transmitter 210 and a receiver 212 to allow transmission and receptionof data between the wireless device 202 and a remote location. Thetransmitter 210 and receiver 212 may be combined into a transceiver 214.An antenna 216 may be attached to the housing 208 and electricallycoupled to the transceiver 214. The wireless device 202 may also include(not shown) multiple transmitters, multiple receivers, multipletransceivers, and/or multiple antennas.

The wireless device 202 may also include a signal detector 218 that maybe used in an effort to detect and quantify the level of signalsreceived by the transceiver 214. The signal detector 218 may detect suchsignals as total energy, energy per subcarrier per symbol, powerspectral density and other signals. The wireless device 202 may alsoinclude a digital signal processor (DSP) 220 for use in processingsignals.

The various components of the wireless device 202 may be coupledtogether by a bus system 222, which may include a power bus, a controlsignal bus, and a status signal bus in addition to a data bus.

FIG. 3 illustrates an example of a transmitter 302 that may be usedwithin a wireless communication system 100 that utilizes OFDM/OFDMA.Portions of the transmitter 302 may be implemented in the transmitter210 of a wireless device 202. The transmitter 302 may be implemented ina base station 104 for transmitting data 306 to a user terminal 106 on adownlink 108. The transmitter 302 may also be implemented in a userterminal 106 for transmitting data 306 to a base station 104 on anuplink 110.

Data 306 to be transmitted is shown being provided as input to aserial-to-parallel (S/P) converter 308. The S/P converter 308 may splitthe transmission data into M parallel data streams 310.

The M parallel data streams 310 may then be provided as input to amapper 312. The mapper 312 may map the M parallel data streams 310 ontoM constellation points. The mapping may be done using some modulationconstellation, such as binary phase-shift keying (BPSK), quadraturephase-shift keying (QPSK), 8 phase-shift keying (8PSK), quadratureamplitude modulation (QAM), etc. Thus, the mapper 312 may output Mparallel symbol streams 316, each symbol stream 316 corresponding to oneof the M orthogonal subcarriers of the inverse fast Fourier transform(IFFT) 320. These M parallel symbol streams 316 are represented in thefrequency domain and may be converted into M parallel time domain samplestreams 318 by an IFFT component 320.

A brief note about terminology will now be provided. M parallelmodulations in the frequency domain are equal to M modulation symbols inthe frequency domain, which are equal to M mapping and M-point IFFT inthe frequency domain, which is equal to one (useful) OFDM symbol in thetime domain, which is equal to M samples in the time domain. One OFDMsymbol in the time domain, NS, is equal to NCP (the number of guardsamples per OFDM symbol)+M(the number of useful samples per OFDMsymbol).

The M parallel time domain sample streams 318 may be converted into anOFDM/OFDMA symbol stream 322 by a parallel-to-serial (P/S) converter324. A guard insertion component 326 may insert a guard interval betweensuccessive OFDM/OFDMA symbols in the OFDM/OFDMA symbol stream 322. Theoutput of the guard insertion component 326 may then be upconverted to adesired transmit frequency band by a radio frequency (RF) front end 328.An antenna 330 may then transmit the resulting signal 332.

FIG. 3 also illustrates an example of a receiver 304 that may be usedwithin a wireless device 202 that utilizes OFDM/OFDMA. Portions of thereceiver 304 may be implemented in the receiver 212 of a wireless device202. The receiver 304 may be implemented in a user terminal 106 forreceiving data 306 from a base station 104 on a downlink 108. Thereceiver 304 may also be implemented in a base station 104 for receivingdata 306 from a user terminal 106 on an uplink 110.

The transmitted signal 332 is shown traveling over a wireless channel334. When a signal 332′ is received by an antenna 330′, the receivedsignal 332′ may be downconverted to a baseband signal by an RF front end328′. A guard removal component 326′ may then remove the guard intervalthat was inserted between OFDM/OFDMA symbols by the guard insertioncomponent 326.

The output of the guard removal component 326′ may be provided to an S/Pconverter 324′. The S/P converter 324′ may divide the OFDM/OFDMA symbolstream 322′ into the M parallel time-domain symbol streams 318′, each ofwhich corresponds to one of the M orthogonal subcarriers. A fast Fouriertransform (FFT) component 320′ may convert the M parallel time-domainsymbol streams 318′ into the frequency domain and output M parallelfrequency-domain symbol streams 316′.

A demapper 312′ may perform the inverse of the symbol mapping operationthat was performed by the mapper 312 thereby outputting M parallel datastreams 310′. A P/S converter 308′ may combine the M parallel datastreams 310′ into a single data stream 306′. Ideally, this data stream306′ corresponds to the data 306 that was provided as input to thetransmitter 302. Note that elements 308′, 310′, 312′, 316′, 320′, 318′and 324′ may all be found in a baseband processor 340′.

Exemplary Uplink Scheduling

The present disclosure proposes a flexible scheduling method thatconsiders a plurality of Quality of Service (QoS) parameters perconnection of a mobile station (MS). A priority decision can be madebased on the metric that comprises QoS parameters and current trafficmeasurements. The weight factors may be applied for every QoS parameterper each connection providing flexibility of the scheduling algorithm.The proposed scheduling algorithm may be applied to satisfy differentrequirements for each service and application by changing weight factorsif required. Because different weight factors may be applied ondifferent QoS parameters, even if the schedule type of a connection ismore important than other schedule types, if that connection alreadysatisfies all QoS requirements, then other connections may obtain higherpriority. The proposed scheduling approach can be applied to all datacommunication protocols that support a concept of QoS.

FIG. 4 shows QoS parameters that may be considered for differentscheduling types in the IEEE 802.16 standard. For example, as labeled inFIG. 4, an Unsolicited Grant Service (UGS) traffic should satisfy thefollowing QoS parameters (i.e., requirements): maximum sustained trafficrate, minimum reserved traffic rate, maximum latency, tolerated jitter,request/transmission policy and unsolicited grant interval. As shown inFIG. 4, there are five scheduling types defined by the IEEE 802.16standard: the UGS, an Extended Real-Time Variable-Rate (ERT-VR) which isalso called an Extended Real-Time Polling Service (ERT-PS), a Real-TimeVariable-Rate (RT-VR) which is also called a Real-Time Polling Service(RT-PS), a Non Real-Time Variable-Rate (NRT-VR) which is also called aNon-Real-Time Polling Service (NRT-PS), and a Best Effort (BE).

FIG. 5 shows weight factors associated with different QoS parameters perscheduling type. A Basic connection and a Primary Management connectionare also considered. By defining different weight values for one QoSparameter along different scheduling types, a preference on the specificscheduling type may be provided. For example, a bigger weight factorassociated with the minimum reserved traffic rate may be set for the UGStraffic than for the NRT-VR connection because the UGS traffic may bemore important and sensitive to the traffic rate.

In addition, by setting different weight values for the scheduling typealong a plurality of QoS parameters, the preference on the specific QoSparameter for the scheduling type may be provided. For example, themaximum latency may be more important than the minimum reserved rate forthe UGS traffic. Therefore, the weight factor of the maximum latency isset to be greater than the weight factor of the minimum reserved ratefor this particular connection. It can be also observed from FIG. 5 thatthe ERT-PS and the RT-PS schedule types may have identical weight valuesfor all specified QoS parameters.

FIG. 6 shows a process of determining a scheduling order of all activeconnections of the MS. At a beginning of the process 600, at 610, a listof connections of the MS may be obtained, as well as a list of Qualityof Service (QoS) parameters per connection associated with weightfactors as shown in FIG. 5. At 620, a QoS metric may be calculated foreach connection of the MS based on weight factors of QoS parameters forthe corresponding connection and on a traffic status metric for thatparticular connection. Once the QoS metric is calculated for everyconnection of the MS, the scheduling order of all active connections ofthe MS may be determined, at 630.

The traffic status metric may be updated individually for everyscheduling type. One particular parameter of the traffic rate metric isa rate factor r_(f). The rate factor may be determined according tofollowing expressions:

$\begin{matrix}{{r_{f} = {{1\mspace{14mu}{if}\mspace{14mu}{Max}_{R}} > {Avg}_{R} \geq {Min}_{R}}}{{{and}\mspace{14mu}{scheduling}\mspace{14mu}{type}\mspace{14mu}{is}\mspace{14mu}{UGS}\mspace{14mu}{or}\mspace{14mu}{ERT}\text{-}{PS}},}} & (1) \\{{r_{f} = {{0\mspace{14mu}{if}\mspace{14mu}{Max}_{R}} > {Avg}_{R} \geq {Min}_{R}}}{{{and}\mspace{14mu}{scheduling}\mspace{14mu}{type}\mspace{14mu}{is}\mspace{14mu}{RT}\text{-}{PS}},{{NRT}\text{-}{PS}\mspace{14mu}{or}\mspace{14mu}{BE}},}} & (2) \\{{r_{f} = {{0\mspace{14mu}{if}\mspace{14mu}{Avg}_{R}} \geq {Max}_{R}}}{{{and}\mspace{14mu}{scheduling}\mspace{14mu}{type}\mspace{14mu}{is}\mspace{14mu}{UGS}},{{ERT}\text{-}{PS}},{{RT}\text{-}{PS}},{{NRT}\text{-}{PS}\mspace{14mu}{or}\mspace{14mu}{BE}},}} & (3) \\{{r_{f} = {{{\left( {\left( {{Min}_{R} - {Avg}_{R}} \right) \cdot {90/{M{in}}_{R}}} \right)/10} + {1\mspace{14mu}{if}\mspace{14mu}{Avg}_{R}}} < {Min}_{R}}}{{{and}\mspace{14mu}{scheduling}\mspace{14mu}{type}\mspace{14mu}{is}\mspace{14mu}{UGS}\mspace{14mu}{or}\mspace{14mu}{ERT}\text{-}{PS}},}} & (4) \\{{r_{f} = {{{\left( {\left( {{Min}_{R} - {Avg}_{R\;}} \right) \cdot {100/{Min}_{R}}} \right)/10}\mspace{14mu}{if}\mspace{14mu}{Avg}_{R}} < {Min}_{R}}}{{{and}\mspace{14mu}{scheduling}\mspace{14mu}{type}\mspace{14mu}{is}\mspace{14mu}{RT}\text{-}{PS}},{{NRT}\text{-}{PS}\mspace{14mu}{or}\mspace{14mu}{BE}},}} & (5)\end{matrix}$where Avg_(R) is an average measured traffic rate, Min_(R) is a minimumconfigured reserved traffic rate, and Max_(R) is a maximum configuredsustained traffic rate.

Another parameter of the traffic status metric is a latency factorl_(f). The latency factor may be computed according to the followingexpression:

$\begin{matrix}{l_{f} = \left\{ \begin{matrix}{0,{{{if}\mspace{14mu}{NON\_ ALLOC}{\_ Intv}} \leq {Max}_{L}}} \\{{\left( {\left( {{{NON\_ ALLOC}{\_ Intv}} - {Max}_{L}} \right) \cdot {100/{Max}_{L}}} \right)/10}\mspace{14mu}{otherwise}}\end{matrix} \right.} & (6)\end{matrix}$where, NON_ALLOC_Intv represents a measured non-allocated interval, andMax_(L) is a maximum configured latency.

FIG. 7 shows a process of computing the QoS metric for each connectionof the MS. The QoS metric may be utilized to determine a schedulingorder of all active connections of the MS. If the QoS metric is not yetcomputed for all active connections of the MS (decision step 710), thena scheduling type of a particular connection may be obtained, at 720.Once the scheduling type of the connection is known, the traffic statusmetric (such as a traffic priority factor, the rate factor, the latencyfactor, etc) may be updated for the corresponding connection, at 722 ifthe connection is the UGS connection, at 724 if the connection is theERT-PS connection, at 726 if the connection is the RT-PS connection, at728 if the connection is the NRT-PS connection, at 730 if the connectionis the BE connection. At 740, the QoS metric may be calculated for theparticular connection of the MS based on weight factors of QoSparameters specified in FIG. 5 for that connection and on the updatedtraffic status metric for the connection.

The QoS metric may be calculated by the following formula:QoS_Metric=Fst(scheduletype)+Ftp(scheduling_type,traffic_priority)++Frf(scheduling_type,rf)+Flf(scheduling_type,If),  (7)where Fst is a function that retrieves weight factor of scheduling typefor given scheduling type, and:Ftp=traffic_priority*(weight factor of traffic priority for givenscheduling type),  (8)Frf=rf*(weight factor of rate metric for given scheduling type),  (9)Flf=lf*(weight factor of latency metric for given schedulingtype).  (10)

The scheduling priority may be given to a connection with a larger QoSmetric over a connection with a smaller QoS metric. The connection thatis associated with the largest QoS metric value among all activeconnections of the MS may be selected as the first connection from whicha buffered traffic may be loaded onto the allocated UL bandwidth.

Weight factors for the Basic connection and the Primary Managementconnection may be typically set with large values to satisfy thefollowing condition for the QoS metric:QoS_Metric(Basic)>QoS_Metric(Primary Management)>QoS_Metric(UGS).  (11)

For certain embodiments of the present disclosure the UGS connection maybe configured to have higher priority than the Basic connection.Therefore, weight factors from FIG. 5 associated with the Basicconnection may be set accordingly resulting into the QoS metric smallerthan the QoS metric of the UGS connection.

The various operations of methods described above may be performed byvarious hardware and/or software component(s) and/or module(s)corresponding to means-plus-function blocks illustrated in the Figures.For example, blocks 610-630 illustrated in FIG. 6 correspond tomeans-plus-function blocks 610A-630A illustrated in FIG. 6A. Similarly,blocks 710-750 illustrated in FIG. 7 correspond to means-plus-functionblocks 710A-750A illustrated in FIG. 7A. More generally, where there aremethods illustrated in Figures having corresponding counterpartmeans-plus-function Figures, the operation blocks correspond tomeans-plus-function blocks with similar numbering.

The various illustrative logical blocks, modules and circuits describedin connection with the present disclosure may be implemented orperformed with a general purpose processor, a digital signal processor(DSP), an application specific integrated circuit (ASIC), a fieldprogrammable gate array signal (FPGA) or other programmable logic device(PLD), discrete gate or transistor logic, discrete hardware componentsor any combination thereof designed to perform the functions describedherein. A general purpose processor may be a microprocessor, but in thealternative, the processor may be any commercially available processor,controller, microcontroller or state machine. A processor may also beimplemented as a combination of computing devices, e.g., a combinationof a DSP and a microprocessor, a plurality of microprocessors, one ormore microprocessors in conjunction with a DSP core, or any other suchconfiguration.

The steps of a method or algorithm described in connection with thepresent disclosure may be embodied directly in hardware, in a softwaremodule executed by a processor, or in a combination of the two. Asoftware module may reside in any form of storage medium that is knownin the art. Some examples of storage media that may be used includerandom access memory (RAM), read only memory (ROM), flash memory, EPROMmemory, EEPROM memory, registers, a hard disk, a removable disk, aCD-ROM and so forth. A software module may comprise a singleinstruction, or many instructions, and may be distributed over severaldifferent code segments, among different programs, and across multiplestorage media. A storage medium may be coupled to a processor such thatthe processor can read information from, and write information to, thestorage medium. In the alternative, the storage medium may be integralto the processor.

The methods disclosed herein comprise one or more steps or actions forachieving the described method. The method steps and/or actions may beinterchanged with one another without departing from the scope of theclaims. In other words, unless a specific order of steps or actions isspecified, the order and/or use of specific steps and/or actions may bemodified without departing from the scope of the claims.

The functions described may be implemented in hardware, software,firmware or any combination thereof. If implemented in software, thefunctions may be stored as one or more instructions on acomputer-readable medium. A storage media may be any available mediathat can be accessed by a computer. By way of example, and notlimitation, such computer-readable media can comprise RAM, ROM, EEPROM,CD-ROM or other optical disk storage, magnetic disk storage or othermagnetic storage devices, or any other medium that can be used to carryor store desired program code in the form of instructions or datastructures and that can be accessed by a computer. Disk and disc, asused herein, include compact disc (CD), laser disc, optical disc,digital versatile disc (DVD), floppy disk, and Blu-ray® disc where disksusually reproduce data magnetically, while discs reproduce dataoptically with lasers.

Software or instructions may also be transmitted over a transmissionmedium. For example, if the software is transmitted from a website,server, or other remote source using a coaxial cable, fiber optic cable,twisted pair, digital subscriber line (DSL), or wireless technologiessuch as infrared, radio, and microwave, then the coaxial cable, fiberoptic cable, twisted pair, DSL, or wireless technologies such asinfrared, radio, and microwave are included in the definition oftransmission medium.

Further, it should be appreciated that modules and/or other appropriatemeans for performing the methods and techniques described herein can bedownloaded and/or otherwise obtained by a user terminal and/or basestation as applicable. For example, such a device can be coupled to aserver to facilitate the transfer of means for performing the methodsdescribed herein. Alternatively, various methods described herein can beprovided via storage means (e.g., RAM, ROM, a physical storage mediumsuch as a compact disc (CD) or floppy disk, etc.), such that a userterminal and/or base station can obtain the various methods uponcoupling or providing the storage means to the device. Moreover, anyother suitable technique for providing the methods and techniquesdescribed herein to a device can be utilized.

It is to be understood that the claims are not limited to the preciseconfiguration and components illustrated above. Various modifications,changes and variations may be made in the arrangement, operation anddetails of the methods and apparatus described above without departingfrom the scope of the claims.

What is claimed is:
 1. A method for scheduling uplink connections of amobile station (MS), comprising: setting a plurality of weight factorsfor a plurality of Quality of Service (QoS) parameters for differentconnection scheduling type classifications based on each connectionscheduling type classification, the connection scheduling typeclassifications predefined according to a wireless standard andincluding at least two of an Unsolicited Grant Service (UGS), aReal-Time Polling Service (RT-PS), an Extended Real-Time PollingService, a Non-Real-Time Polling Service (NRT-PS), and a Best Effort(BE); updating a traffic status metric for one or more activeconnections of the MS, each of the active connections associated withone of the connection scheduling type classifications; calculating a QoSmetric for each of the one or more active connections of the MS based onat least a portion of the plurality of weight factors retrieved for theplurality of QoS parameters and the traffic status metric related toeach of the one or more active connections, wherein at least the portionof the plurality of weight factors is retrieved for each of the one ormore active connections based on at least the connection scheduling typeclassification of that active connection; determining a scheduling orderof the one or more active connections of the MS according to the QoSmetric for each of the one or more active connections; and transmittingover at least a portion of the one or more active connections accordingto the scheduling order.
 2. The method of claim 1, further comprising:assigning a scheduling priority to at least a first connection of theone or more active connections having a larger QoS metric over at leasta second connection of the one or more active connections having asmaller QoS metric.
 3. The method of claim 1, wherein the plurality ofweight factors are set to satisfy the plurality of QoS parameters ofeach of the one or more active connections of the MS.
 4. The method ofclaim 1, wherein the plurality of QoS parameters comprise at least oneof a maximum sustained traffic rate, a minimum reserved traffic rate, ora maximum latency.
 5. The method of claim 1, wherein the traffic statusmetric comprises at least one of a traffic priority factor, a ratefactor, and a latency factor.
 6. The method of claim 5, furthercomprising: calculating the rate factor based on the scheduling typeclassification of the one or more active connections, an averagemeasured traffic rate, a minimum configured reserved traffic rate and amaximum configured sustained traffic rate; and calculating the latencyfactor based on a measured non-allocated interval and a maximumconfigured latency.
 7. An apparatus for scheduling uplink connections ofa mobile station (MS), comprising: at least one processor configured to:set a plurality of weight factors for a plurality of Quality of Service(QoS) parameters for different connection scheduling typeclassifications based on each connection scheduling type classification,the connection scheduling type classifications predefined according to awireless standard and including at least two of an Unsolicited GrantService (UGS), a Real-Time Polling Service (RT-PS), an ExtendedReal-Time Polling Service, a Non-Real-Time Polling Service (NRT-PS), anda Best Effort (BE); update a traffic status metric for one or moreactive connections of the MS, each of the active connections associatedwith one of the connection scheduling type classifications; calculate aQoS metric for each of the one or more active connections of the MSbased on at least a portion of the plurality of weight factors retrievedfor the plurality of QoS parameters and the traffic status metricrelated to each of the one or more active connections, wherein at leastthe portion of the plurality of weight factors is retrieved for each ofthe one or more active connections based on at least the connectionscheduling type classification of that active connection; and determinea scheduling order of the one or more active connections of the MSaccording to the QoS metric for each of the one or more activeconnections; and a memory coupled to the at least one processor.
 8. Theapparatus of claim 7, wherein the at least one processor is furtherconfigured to assign a scheduling priority to at least a firstconnection of the one or more active connections having a larger QoSmetric over at least a second connection of the one or more activeconnections having a smaller QoS metric.
 9. The apparatus of claim 7,wherein the plurality of weight factors are set to satisfy the pluralityof QoS parameters of each of the one or more active connections of theMS.
 10. The apparatus of claim 7, wherein the plurality of QoSparameters comprise at least one of a maximum sustained traffic rate, aminimum reserved traffic rate, or a maximum latency.
 11. The apparatusof claim 7, wherein the traffic status metric comprises at least one ofa traffic priority factor, a rate factor, and a latency factor.
 12. Theapparatus of claim 11, wherein the at least one processor is furtherconfigured to: calculate the rate factor based on the scheduling typeclassification of the one or more active connections, an averagemeasured traffic rate, a minimum configured reserved traffic rate and amaximum configured sustained traffic rate; and calculate the latencyfactor based on a measured non-allocated interval and a maximumconfigured latency.
 13. An apparatus for scheduling uplink connectionsof a mobile station (MS), comprising: means for setting a plurality ofweight factors for a plurality of Quality of Service (QoS) parametersfor different connection scheduling type classifications based on eachconnection scheduling type classification, the connection schedulingtype classifications predefined according to a wireless standard andincluding at least two of an Unsolicited Grant Service (UGS), aReal-Time Polling Service (RT-PS), an Extended Real-Time PollingService, a Non-Real-Time Polling Service (NRT-PS), and a Best Effort(BE); means for updating a traffic status metric for one or more activeconnections of the MS, each of the active connections associated withone of the connection scheduling type classifications; means forcalculating a QoS metric for each of the one or more active connectionsof the MS based on at least a portion of the plurality of weight factorsretrieved for the plurality of QoS parameters and the traffic statusmetric related to each of the one or more active connections, wherein atleast the portion of the plurality of weight factors is retrieved foreach of the one or more active connections based on at least theconnection scheduling type classification of that active connection; andmeans for determining a scheduling order of the one or more activeconnections of the MS according to the QoS metric for each of the one ormore active connections.
 14. The apparatus of claim 13, wherein themeans for determining the scheduling order assigns a scheduling priorityto at least a first connection of the one or more active connectionshaving a larger QoS metric over at least a second connection of the oneor more active connections having a smaller QoS metric.
 15. Theapparatus of claim 13, wherein the plurality of weight factors are setto satisfy the plurality of QoS parameters of each of the one or moreactive connections of the MS.
 16. The apparatus of claim 13, wherein theplurality of QoS parameters comprise at least one of a maximum sustainedtraffic rate, a minimum reserved traffic rate, or a maximum latency. 17.The apparatus of claim 13, wherein the traffic status metric comprisesat least one of a traffic priority factor, a rate factor, and a latencyfactor.
 18. The apparatus of claim 17, further comprising: means forcalculating the rate factor based on the scheduling type classificationof the one or more active connections, an average measured traffic rate,a minimum configured reserved traffic rate and a maximum configuredsustained traffic rate; and means for calculating the latency factorbased on a measured non-allocated interval and a maximum configuredlatency.
 19. A computer-program product for scheduling uplinkconnections of a mobile station (MS), comprising a non-transitorycomputer readable medium having instructions stored thereon, theinstructions being executable by one or more processors and theinstructions comprising: instructions for setting a plurality of weightfactors for a plurality of Quality of Service (QoS) parameters fordifferent connection scheduling type classifications based on eachconnection scheduling type classification, the connection schedulingtype classifications predefined according to a wireless standard andincluding at least two of an Unsolicited Grant Service (UGS), aReal-Time Polling Service (RT-PS), an Extended Real-Time PollingService, a Non-Real-Time Polling Service (NRT-PS), and a Best Effort(BE); instructions for updating a traffic status metric for one or moreactive connections of the MS, each of the active connections associatedwith one of the connection scheduling type classifications; instructionsfor calculating a QoS metric for each of the one or more activeconnections of the MS based on at least a portion of the plurality ofweight factors retrieved for the plurality of QoS parameters and thetraffic status metric related to each of the one or more activeconnections, wherein at least the portion of the plurality of weightfactors is retrieved for each of the one or more active connectionsbased on at least the connection scheduling type classification of thatactive connection; and instructions for determining a scheduling orderof the one or more active connections of the MS according to the QoSmetric for each of the one or more active connections.
 20. Thecomputer-program product of claim 19, wherein the instructions furthercomprise: instructions for assigning a scheduling priority to at least afirst connection of the one or more active connections having a largerQoS metric over at least a second connection of the one or more activeconnections having a smaller QoS metric.
 21. The computer-programproduct of claim 19, wherein the plurality of weight factors are set tosatisfy the plurality of QoS parameters of each of the one or moreactive connections of the MS.
 22. The computer-program product of claim19, wherein the plurality of QoS parameters comprise at least one of amaximum sustained traffic rate, a minimum reserved traffic rate, or amaximum latency.
 23. The computer-program product of claim 19, whereinthe traffic status metric comprises at least one of a traffic priorityfactor, a rate factor, or a latency factor.
 24. The computer-programproduct of claim 23, wherein the instructions further comprise:instructions for calculating the rate factor based on the schedulingtype classification of the one or more active connections, an averagemeasured traffic rate, a minimum configured reserved traffic rate and amaximum configured sustained traffic rate; and instructions forcalculating the latency factor based on a measured non-allocatedinterval and a maximum configured latency.